
test_one.o:     file format elf64-littleaarch64


Disassembly of section .text:

0000000000000000 <test1>:
#include <stdio.h>
#include <string.h>


int test1()
{
   0:	a9bd7bfd 	stp	x29, x30, [sp, #-48]!
   4:	910003fd 	mov	x29, sp
	char string[10];
	char *str = "0123456789";
   8:	90000000 	adrp	x0, 0 <test1>
   c:	91000000 	add	x0, x0, #0x0
  10:	f90017a0 	str	x0, [x29, #40]
	
	strcpy(string, str);	// overflow
  14:	910063a0 	add	x0, x29, #0x18
  18:	f94017a1 	ldr	x1, [x29, #40]
  1c:	94000000 	bl	0 <strcpy>
	
	return 0;
  20:	52800000 	mov	w0, #0x0                   	// #0
}
  24:	a8c37bfd 	ldp	x29, x30, [sp], #48
  28:	d65f03c0 	ret

000000000000002c <test2>:

void test2()
{
  2c:	a9bd7bfd 	stp	x29, x30, [sp, #-48]!
  30:	910003fd 	mov	x29, sp
	char string[10], str1[10];
	int i;
	
	for (i = 0; i < 10; i++)
  34:	b9002fbf 	str	wzr, [x29, #44]
  38:	14000008 	b	58 <test2+0x2c>
		str1[i] = 'a';	// buneng jieshu, 
  3c:	b9802fa0 	ldrsw	x0, [x29, #44]
  40:	910043a1 	add	x1, x29, #0x10
  44:	52800c22 	mov	w2, #0x61                  	// #97
  48:	38206822 	strb	w2, [x1, x0]
	for (i = 0; i < 10; i++)
  4c:	b9402fa0 	ldr	w0, [x29, #44]
  50:	11000400 	add	w0, w0, #0x1
  54:	b9002fa0 	str	w0, [x29, #44]
  58:	b9402fa0 	ldr	w0, [x29, #44]
  5c:	7100241f 	cmp	w0, #0x9
  60:	54fffeed 	b.le	3c <test2+0x10>
		
	strcpy(string, str1);	// copy zijie shu bu queding.   strcpy yi '\0' jieshu.
  64:	910043a1 	add	x1, x29, #0x10
  68:	910083a0 	add	x0, x29, #0x20
  6c:	94000000 	bl	0 <strcpy>
}
  70:	d503201f 	nop
  74:	a8c37bfd 	ldp	x29, x30, [sp], #48
  78:	d65f03c0 	ret

000000000000007c <test3>:

void test3(char *str)
{
  7c:	a9bd7bfd 	stp	x29, x30, [sp, #-48]!
  80:	910003fd 	mov	x29, sp
  84:	f9000fa0 	str	x0, [x29, #24]
	char string[10];
	
	if (strlen(str) <= 10)	// modify < 10
  88:	f9400fa0 	ldr	x0, [x29, #24]
  8c:	94000000 	bl	0 <strlen>
  90:	f100281f 	cmp	x0, #0xa
  94:	54000088 	b.hi	a4 <test3+0x28>  // b.pmore
		strcpy(string, str);
  98:	910083a0 	add	x0, x29, #0x20
  9c:	f9400fa1 	ldr	x1, [x29, #24]
  a0:	94000000 	bl	0 <strcpy>
}
  a4:	d503201f 	nop
  a8:	a8c37bfd 	ldp	x29, x30, [sp], #48
  ac:	d65f03c0 	ret

00000000000000b0 <main>:

int main()
{
  b0:	52800000 	mov	w0, #0x0                   	// #0
	
}
  b4:	d65f03c0 	ret
